package org.ehe.common.core.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @author :zhangnn
 * @className :BomTypeEnum
 * @description: TODO
 * @date 2025-08-01 13:39:08
 */
public enum BomTypeEnum {
    // 枚举实例，对应原来的常量
    DESIGN_BOM("1", "设计BOM"),
    PROCESS_BOM("2", "工艺BOM"),
    MANUFACTURING_BOM("3", "制造BOM"),
    UNKNOWN_BOM("4", "未知类型");

    // 枚举属性
    private final String code;
    private final String value;

    // 构造方法
    BomTypeEnum(String code, String value) {
        this.code = code;
        this.value = value;
    }

    // 获取code的方法
    public String getCode() {
        return code;
    }

    // 获取value的方法
    public String getValue() {
        return value;
    }

    /**

     根据 code 获取对应的 value
     @param code 编码（如 "1"、"2"）
     @return 对应的名称（如 "设计 BOM"），若未找到则返回 "未知类型"
     */
    public static String getValueByCode (String code) {
        // 遍历所有枚举实例，匹配 code
        for (BomTypeEnum type : BomTypeEnum.values ()) {
            if (type.code.equals (code)) {
                return type.value;
            }
        }
        // 未匹配到任何 code 时，返回默认的 "未知类型"
        return UNKNOWN_BOM.value;
    }
}
